package com.ruoyi.project.zxcrm.mapper;


import com.ruoyi.project.zxcrm.domain.CrmSmsTemplate;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Result;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**
 * 信息模板Mapper接口
 *
 * @author mn
 * @date 2023-02-23
 */
public interface CrmSmsTemplateMapper {
    /**
     * 查询信息模板
     *
     * @param id 信息模板主键
     * @return 信息模板
     */
    public CrmSmsTemplate selectCrmSmsTemplateById(@Param("id") Long id);

    public CrmSmsTemplate selectCrmSmsTemplateByIdOrByTDay(@Param("id") long id, @Param("tDay") long tDay);

    /**
     * 查询信息模板列表
     *
     * @param
     * @return 信息模板集合
     */
    public List<CrmSmsTemplate> selectCrmSmsTemplateList();

    /**
     * 新增信息模板
     *
     * @param crmSmsTemplate 信息模板
     * @return 结果
     */
    public int insertCrmSmsTemplate(CrmSmsTemplate crmSmsTemplate);

    /**
     * 修改信息模板
     *
     * @param crmSmsTemplate 信息模板
     * @return 结果
     */
    public int updateCrmSmsTemplate(CrmSmsTemplate crmSmsTemplate);

    /**
     * 删除信息模板
     *
     * @param id 信息模板主键
     * @return 结果
     */
//    public int deleteCrmSmsTemplateById(Long id);
//
//    /**
//     * 批量删除信息模板
//     *
//     * @param ids 需要删除的数据主键集合
//     * @return 结果
//     */
//    public int deleteCrmSmsTemplateByIds(Long[] ids);
    @Result(column = "template_text",property = "templateText")
    @Select("SELECT template_text,sms_source FROM sms_template WHERE id = #{id}")
    public CrmSmsTemplate queryCrmSmsTemplateId(@Param("id") Long Tid);

    @Select("select count(1) from  (SELECT id FROM `sms_template` where type = #{type} GROUP BY id) t")
    int queryTypeCount(String type);

}
